package system.model.request;

import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @author 米泽鹏
 * @since 2022-3-12 下午 2:33
 */
@Data
public class SaveTopicCommentRequest {

	/**
	 * 主键
	 */
	private Long id;

	/**
	 * 话题id
	 */
	@NotNull(message = "话题id不能为空")
	private Long topicId;

	/**
	 * 上级评论id
	 */
	@NotNull(message = "上级评论id不能为空")
	private Long parentId;

	/**
	 * 用户id
	 */
	@NotNull(message = "用户id不能为空")
	private Long userId;

	/**
	 * 用户昵称
	 */
	@NotBlank(message = "用户昵称不能为空")
	private String nickname;

	/**
	 * 用户id
	 */
	@NotNull(message = "被评论用户id不能为空")
	private Long replyToUserId;

	/**
	 * 用户昵称
	 */
	@NotBlank(message = "被评论用户昵称不能为空")
	private String replyToNickname;

	/**
	 * 评论内容
	 */
	@NotBlank(message = "评论内容不能为空")
	@Length(max = 1000, message = "评论内容不能超过1000个字符")
	private String content;

	/**
	 * 排序
	 */
	@NotNull(message = "排序不能为空")
	@Max(value = Integer.MAX_VALUE, message = "排序不能大于" + Integer.MAX_VALUE)
	@Min(value = 1, message = "排序不能小于1")
	private Integer sort;

}
